本稿では、無限小数 $0.999\dots$ についての数学的な定義と、それが直観とどのように衝突するのか、そしてその直観を数学的に正当化し得る超準解析 (non-standard analysis) における解釈について自己完結的 (self-contained) に解説します。
Ian Stewart と David Tall の著書 The Foundations of Mathematics には、人間が無限小数をどのように認識しているかについて、非常に示唆に富む言及があります。
定義 2.14: 無限小数 $a_0.a_1a_2\dots a_n\dots$ の値は、小数第 $n$ 位までの小数の数列 $(d_n)$ の極限 $l$ である。ここで、$d_n = a_0.a_1a_2\dots a_n$ とする。
この定義を用いると、$0.333\dots$ は $1/3$ となり、$0.999\dots$ は $1$ となる。
解説: 研究によれば、ほとんどの人が最初は $0.999\dots$ を「$1$ よりわずかに小さい」と信じていることが示されている。その心理的な理由は、私たちが数列 $(a_n)$ を単なる数の羅列としてではなく、$n$ が変化するにつれて変化する「変動する量」として捉えていることにあると考えられる。……この動的な直観が、$0.999\dots$ は $1$ に等しいというよりも、むしろ「$1$ よりわずかに小さい」と私たちに信じ込ませるのである。
Stewart と Tall が指摘するように、私たちは数列を極限という「到達した静的な値 (static value)」ではなく、「果てしなく近づくプロセス」として捉えがちです。しかし、標準的な解析学 (standard analysis) においては、この直観を排し、厳密な極限 (limit) の定義を採用しなければ一貫した形式的理論を構築できません。
まず、標準的な実数 $\mathbb{R}$ の枠組みにおける極限の定義を復習します。
定義(数列の極限): 実数列 $(a_n)$ が実数 $L$ に収束する (converge) とは、任意の正の実数 $\varepsilon > 0$ に対して、ある自然数 $N \in \mathbb{N}$ が存在し、$n > N$ を満たすすべての自然数 $n$ について $|a_n - L| < \varepsilon$ が成り立つことである。これを $\lim_{n \to \infty} a_n = L$ と表記する。
この定義を用いて、$0.999\dots = 1$ を証明します。
証明:
無限小数 $0.999\dots$ は、以下の数列 $(a_n)$ の極限として定義されます。
$$a_n = 0.\underbrace{99\cdots 99}_{n} = \sum_{k=1}^{n} \frac{9}{10^k} = 1 - \frac{1}{10^n}$$
この極限が $1$ になること、すなわち $\lim_{n \to \infty} \left(1 - \frac{1}{10^n}\right) = 1$ を示します。
任意の $\varepsilon > 0$ が与えられたとします。アルキメデスの公理 (Archimedean property) により、$\frac{1}{10^N} < \varepsilon$ を満たす自然数 $N$ が存在します。
$n > N$ ならば、$\frac{1}{10^n} < \frac{1}{10^N} < \varepsilon$ となります。したがって、
$$|a_n - 1| = \left| \left(1 - \frac{1}{10^n}\right) - 1 \right| = \left| -\frac{1}{10^n} \right| = \frac{1}{10^n} < \varepsilon$$
が成り立ちます。極限の定義より、$0.999\dots = 1$ です。(証明終)
標準的な解析学では完全に否定される「$1$ よりわずかに小さい」という直観ですが、Abraham Robinson によって創始された超準解析 (non-standard analysis) においては、この直観に厳密な数学的意味を持たせることができます。
超実数 (hyperreal number) の体系 ${}^*\mathbb{R}$ は、実数列全体の集合 $\mathbb{R}^{\mathbb{N}}$ に対し、ある同値関係 (equivalence relation) を導入する「超冪構成 (ultrapower construction)」によって構築されます。
定義(ウルトラフィルター): 自然数の集合 $\mathbb{N}$ の部分集合族 $\mathcal{U} \subset \mathcal{P}(\mathbb{N})$ がウルトラフィルター (ultrafilter) であるとは、以下の条件を満たすことである。
ここで、任意の有限集合を含まないウルトラフィルターを自由ウルトラフィルター (free ultrafilter) と呼びます。Zorn の補題 (Zorn's lemma) により、その存在が保証されます。
位相空間論における補足: $\mathbb{N}$ 上のウルトラフィルター全体の集合は、離散位相 (discrete topology) を与えられた $\mathbb{N}$ の Stone–Čech コンパクト化 (Stone–Čech compactification) $\beta\mathbb{N}$ を形成します。この空間 $\beta\mathbb{N}$ は Hausdorff 空間 (Hausdorff space) であり、その中の clopen 集合 (clopen set) は $\mathbb{N}$ の部分集合に一対一対応します。さらに、$\mathbb{N}$ の冪集合 $\mathcal{P}(\mathbb{N})$ が完備ブール代数 (complete Boolean algebra) をなすという性質から、この空間 $\beta\mathbb{N}$ は超不連結 (extremally disconnected) な空間となります。超実数の構成を支えるウルトラフィルターは、このような豊かな位相的背景を持っています。
自由ウルトラフィルター $\mathcal{U}$ を一つ固定します。2つの実数列 $(a_n)$ と $(b_n)$ が「ほとんど至る所等しい」ことを次のように定義します。
$$(a_n) \sim (b_n) \iff \{ n \in \mathbb{N} \mid a_n = b_n \} \in \mathcal{U}$$
この同値関係 (equivalence relation) $\sim$ による商集合 (quotient set) $\mathbb{R}^{\mathbb{N}} / \sim$ が、超実数体 ${}^*\mathbb{R}$ です。数列 $(a_n)$ の同値類 (equivalence class) を $[(a_n)]$ と表記します。
自然数から実数への写像 $f: \mathbb{N} \to \mathbb{R}$ を考えます。この写像の超準延長 (non-standard extension) ${}^*f: {}^*\mathbb{N} \to {}^*\mathbb{R}$ は、超自然数 (hypernatural number) $x = [(x_n)] \in {}^*\mathbb{N}$ に対して次のように自然に定義されます。
$${}^*f([(x_n)]) = [(f(x_n))]$$
ここで、無限大超自然数 (infinite hypernatural number) の一つである $H = [(1, 2, 3, \dots)]$ を考えます。この $H$ は、任意の標準的な自然数 $k$ よりも真に大きい(すなわち $\{n \in \mathbb{N} \mid n > k\} \in \mathcal{U}$ を満たす)元です。
先ほどの有限小数を表す写像 $f(n) = 0.\underbrace{99\cdots 99}_{n} = 1 - \frac{1}{10^n}$ を用います。この写像を超準延長し、無限大超自然数 $H$ を代入するとどうなるでしょうか。
$${}^*f(H) = {}^*0.\underbrace{99\cdots 99}_{H} = \left[ \left( f(1), f(2), f(3), \dots \right) \right] = \left[ \left( 0.9, 0.99, 0.999, \dots \right) \right]$$
この超実数は、厳密に計算すると次のようになります。
$${}^*f(H) = \left[ \left( 1 - \frac{1}{10^1}, 1 - \frac{1}{10^2}, 1 - \frac{1}{10^3}, \dots \right) \right] = 1 - \left[ \left( \frac{1}{10^1}, \frac{1}{10^2}, \frac{1}{10^3}, \dots \right) \right]$$
ここで $\epsilon = \left[ \left( 1/10, 1/100, 1/1000, \dots \right) \right]$ と置くと、$\epsilon$ はどんな正の実数よりも小さい正の超実数、すなわち無限小 (infinitesimal) となります。したがって、
$${}^*0.\underbrace{99\cdots 99}_{H} = 1 - \epsilon < 1$$
となり、「$1$ よりわずかに小さい」という直観が、無限大桁 $H$ まで書き進めた超準的な小数においては数学的に真となります。
一方で、標準的な解析学における $0.999\dots$ は(すでに証明したように)厳密に実数の $1$ です。実数 $1$ の超実数体への埋め込みは、すべての成分が $1$ である定値数列の同値類となります。
$${}^*0.999\dots = {}^*1 = [(1, 1, 1, \dots)]$$
これら2つの超実数 ${}^*0.\underbrace{99\cdots 99}_{H}$ と ${}^*0.999\dots$ が等しいかどうかを比較します。
2つの元が等しいと仮定すると、同値関係の定義より、対応する成分が一致する添字の集合が $\mathcal{U}$ に属さなければなりません。しかし、
$$\{ n \in \mathbb{N} \mid 1 - 10^{-n} = 1 \} = \emptyset \notin \mathcal{U}$$
となります。したがって、超実数の世界においては以下が厳密に成立します。
定理:
$${}^*0.\underbrace{99\cdots 99}_{H} \neq {}^*0.999\dots$$
すなわち、無限大桁の $9$ を持つ超準的な有限小数と、標準的な極限値としての無限小数は、超実数体において明確に異なる元である。
本稿で解説した、$0.999\dots$ と人間の直観、そして超準解析による数学的表現に関する学術的および教育的な議論について、より深く学ぶための文献リストです。学生による思い込みを超準解析で正当化できるかのように説明している教育関連論文が結構あり、数学教育への悪影響が懸念される。